package com.ns.basic.log.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ns.basic.log.dto.LogPageDto;
import com.ns.basic.log.entry.ApiLog;
import com.ns.basic.log.vo.ApiLogVO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * api请求记录表
 *
 * @author lw
 */
@Mapper
public interface ApiLogMapper extends BaseMapper<ApiLog> {

    /**
     * 删 - 根据日期范围
     *
     * @param startTime 参数
     * @param endTime   参数
     * @return int
     */
    int deleteByStartEnd(@Param("startTime") String startTime, @Param("endTime") String endTime);

    /**
     * 查 - 集合
     *
     * @param dto 参数
     * @return List
     */
    Page<ApiLogVO> getList(@Param("dto") LogPageDto dto, Page page);

    /**
     * 查 - 集合
     *
     * @param dto       参数
     * @param sortField 排序
     * @return Long
     */
    Long staBy(@Param("dto") LogPageDto dto, @Param("sortField") String sortField);

    /**
     * 批量删除
     *
     * @param ids ids
     * @return int
     */
    int delByIds(List<Long> ids);
}
